<?php
namespace app\manage\exception;

use Exception;
use think\exception\Handle;
use think\exception\HttpException;
class Http extends Handle
{

    public function render(Exception $e)
    {
        // 参数验证错误
        if ($e instanceof ValidateException) {
            return json($e->getError(), 422);
        }

        // 请求异常
        if ($e instanceof HttpException && request()->isAjax()) {
            return response($e->getMessage(), $e->getStatusCode());
        }
        $msg = $e->getMessage();
        $file = $e->getFile();
        $line = $e->getLine();
        return json(verify_err('文件:' . $file . ' 行号:' . $line . ' 消息:' . $msg, '访问异常:new-think'));
        //TODO::开发者对异常的操作
        //可以在此交由系统处理
        return parent::render($e);
    }

}
